#/*
#*********************************************************************************************************
#*                                                    MELIS
#*                                    the Easy Portable/Player Develop Kits
#*                                               makefile Module
#*
#*                                    (c) Copyright 2006-2010, kevin.z China
#*                                             All Rights Reserved
#*
#* File    : makefile
#* By      : kevin.z
#* Version : v1.0
#* Date    : 2010-9-3 9:39
#* Descript:
#* Update  : date                auther      ver     notes
#*********************************************************************************************************
#*/
ROOT    = .
SDKROOT = $(ROOT)/../../..


#导入交叉编译器通用配置
include $(SDKROOT)/config/CROSSTOOL.CFG

#头文件路径列表
INCLUDES        =   -I$(ROOT)                               \
                    -I$(SDKROOT)/config                     \
                    -I$(SDKROOT)/boot1/include

#库文件列表
LIBS            = $(LIBSPATH)/eGon2_libc.lib


#定义生成的目标文件(输出/本地)
TARGET      = $(WORKSPACEPATH)/wboot/bootfs/drv_de.drv
LOCALTARGET = __image.axf

#列出该工程下的所有包含源程序的子目录
SRCDIRS     :=  $(shell find . -maxdepth 3 -type d)

INCLUDES    :=  $(INCLUDES)                         \
                $(foreach dir,$(SRCDIRS),-I$(dir))

#从所有子目录中得到源代码的列表
SRCCS=$(foreach dir,$(SRCDIRS),$(wildcard $(dir)/*.c))
SRCSS=$(foreach dir,$(SRCDIRS),$(wildcard $(dir)/*.S))

#得到源代码对应的目标文件的列表
OBJS=$(SRCCS:.c=.o) $(SRCSS:.S=.o)


#生成输出目标文件
all:$(LOCALTARGET)
	$(LOAD) $(LDFLAGS) $(LOCALTARGET) $(TARGET)
	-rm $(OBJS) $(LOCALTARGET)
	@echo ----------------------------
	@echo target make finish
	@echo ----------------------------

#生成本地目标文件
$(LOCALTARGET):$(OBJS)
	$(LINK) $(LKFLAGS) -o $@ $(filter %.o ,$+) $(LIBS)


# 删除生成的中间文件
clean:
	-rm $(OBJS) $(LOCALTARGET)
